#include <iostream>

using namespace std;

int noconst_dis(int x);

constexpr int display(int x);
/**
 * 函数在使用之前，必须有对应的定义语句。
 * 我们知道，函数的使用分为“声明”和“定义”两部分，
 * 普通的函数调用只需要提前写好该函数的声明部分即可（函数的定义部分可以放在调用位置之后甚至其它文件中），
 * 但常量表达式函数在使用前，必须要有该函数的定义。
 * @param x 整形参数
 * @return 整型值
 */
constexpr int display(int x) {
    return 5 + x;
}

int main() {
    int a[display(3)] = {1, 2, 3, 4, 5, 6};
    cout << a[3] << endl;
    cout << noconst_dis(3) << endl;
    return 0;
}
//普通函数在
int noconst_dis(int x) {
    return x + 5;
}